﻿using Microsoft.EntityFrameworkCore;
using Abp.Zero.EntityFrameworkCore;
using LZ.DCode.Authorization.Roles;
using LZ.DCode.Authorization.Users;
using LZ.DCode.MultiTenancy;
using LZ.DCode.Wechat.Messages;
using LZ.DCode.Wechat.Subscribes;
using LZ.DCode.Wechat.Users;
using LZ.DCode.DingTalk.DingTalkConfigs;
using LZ.DCode.DingTalk.Employees;
using LZ.DCode.DingTalk.Organizations;
using LZ.DCode.DataDictionarys;


namespace LZ.DCode.EntityFrameworkCore
{
    public class DCodeDbContext : AbpZeroDbContext<Tenant, Role, User, DCodeDbContext>
    {
        /* Define a DbSet for each entity of the application */
        
        public DCodeDbContext(DbContextOptions<DCodeDbContext> options)
            : base(options)
        {
        }

        public virtual DbSet<WechatMessage> WechatMessages { get; set; }

        public virtual DbSet<WechatSubscribe> WechatSubscribes { get; set; }

        public virtual DbSet<WechatUser> WechatUsers { get; set; }

        public virtual DbSet<DingTalkConfig> DingTalkConfigs { get; set; }

        public virtual DbSet<Employee> Employees { get; set; }

        public virtual DbSet<Organization> Organizations { get; set; }

        public virtual DbSet<DataDictionary> DataDictionaries { get; set; }

        public virtual DbSet<DataGroup> DataGroups { get; set; }

    }
}

